
<!doctype html>
<html lang="zh" class="no-js">
  <head>
    
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width,initial-scale=1">
      
        <meta name="description" content="脚本文档">
      
      
        <meta name="author" content="Logan">
      
      
        <link rel="canonical" href="http://localhost:8000/installation/monitoring_services/">
      
      
        <link rel="prev" href="../storage_services/">
      
      
        <link rel="next" href="../logging_services/">
      
      
      <link rel="icon" href="../../image/favicon.ico">
      <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.50">
    
    
      
        <title>监控系统 - 运维无忧文档</title>
      
    
    
      <link rel="stylesheet" href="../../assets/stylesheets/main.a40c8224.min.css">
      
        
        <link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
      
      


    
    
      
    
    
      
        
        
        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
        <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
      
    
    
      <link rel="stylesheet" href="../../css/extra.css">
    
      <link rel="stylesheet" href="../../css/prism.css">
    
    <script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
    
      

    
    
    
  </head>
  
  
    
    
      
    
    
    
    
    <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="blue">
  
    
    <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
    <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
    <label class="md-overlay" for="__drawer"></label>
    <div data-md-component="skip">
      
        
        <a href="#_1" class="md-skip">
          跳转至
        </a>
      
    </div>
    <div data-md-component="announce">
      
    </div>
    
    
      

  

<header class="md-header md-header--shadow" data-md-component="header">
  <nav class="md-header__inner md-grid" aria-label="页眉">
    <a href="../.." title="运维无忧文档" class="md-header__button md-logo" aria-label="运维无忧文档" data-md-component="logo">
      
  <img src="../../image/logo.png" alt="logo">

    </a>
    <label class="md-header__button md-icon" for="__drawer">
      
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
    </label>
    <div class="md-header__title" data-md-component="header-title">
      <div class="md-header__ellipsis">
        <div class="md-header__topic">
          <span class="md-ellipsis">
            运维无忧文档
          </span>
        </div>
        <div class="md-header__topic" data-md-component="header-topic">
          <span class="md-ellipsis">
            
              监控系统
            
          </span>
        </div>
      </div>
    </div>
    
      
        <form class="md-header__option" data-md-component="palette">
  
    
    
    
    <input class="md-option" data-md-color-media="" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="blue"  aria-label="Switch to dark mode"  type="radio" name="__palette" id="__palette_0">
    
      <label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_1" hidden>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 7a5 5 0 0 1 5 5 5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3m0-7 2.39 3.42C13.65 5.15 12.84 5 12 5s-1.65.15-2.39.42zM3.34 7l4.16-.35A7.2 7.2 0 0 0 5.94 8.5c-.44.74-.69 1.5-.83 2.29zm.02 10 1.76-3.77a7.131 7.131 0 0 0 2.38 4.14zM20.65 7l-1.77 3.79a7.02 7.02 0 0 0-2.38-4.15zm-.01 10-4.14.36c.59-.51 1.12-1.14 1.54-1.86.42-.73.69-1.5.83-2.29zM12 22l-2.41-3.44c.74.27 1.55.44 2.41.44.82 0 1.63-.17 2.37-.44z"/></svg>
      </label>
    
  
    
    
    
    <input class="md-option" data-md-color-media="" data-md-color-scheme="slate" data-md-color-primary="indigo" data-md-color-accent="blue"  aria-label="Switch to light mode"  type="radio" name="__palette" id="__palette_1">
    
      <label class="md-header__button md-icon" title="Switch to light mode" for="__palette_0" hidden>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.75 4.09-2.53 1.94.91 3.06-2.63-1.81-2.63 1.81.91-3.06-2.53-1.94L12.44 4l1.06-3 1.06 3zm3.5 6.91-1.64 1.25.59 1.98-1.7-1.17-1.7 1.17.59-1.98L15.75 11l2.06-.05L18.5 9l.69 1.95zm-2.28 4.95c.83-.08 1.72 1.1 1.19 1.85-.32.45-.66.87-1.08 1.27C15.17 23 8.84 23 4.94 19.07c-3.91-3.9-3.91-10.24 0-14.14.4-.4.82-.76 1.27-1.08.75-.53 1.93.36 1.85 1.19-.27 2.86.69 5.83 2.89 8.02a9.96 9.96 0 0 0 8.02 2.89m-1.64 2.02a12.08 12.08 0 0 1-7.8-3.47c-2.17-2.19-3.33-5-3.49-7.82-2.81 3.14-2.7 7.96.31 10.98 3.02 3.01 7.84 3.12 10.98.31"/></svg>
      </label>
    
  
</form>
      
    
    
      <script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
    
    
    
      <label class="md-header__button md-icon" for="__search">
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
      </label>
      <div class="md-search" data-md-component="search" role="dialog">
  <label class="md-search__overlay" for="__search"></label>
  <div class="md-search__inner" role="search">
    <form class="md-search__form" name="search">
      <input type="text" class="md-search__input" name="query" aria-label="搜索" placeholder="搜索" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
      <label class="md-search__icon md-icon" for="__search">
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
      </label>
      <nav class="md-search__options" aria-label="查找">
        
        <button type="reset" class="md-search__icon md-icon" title="清空当前内容" aria-label="清空当前内容" tabindex="-1">
          
          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
        </button>
      </nav>
      
    </form>
    <div class="md-search__output">
      <div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
        <div class="md-search-result" data-md-component="search-result">
          <div class="md-search-result__meta">
            正在初始化搜索引擎
          </div>
          <ol class="md-search-result__list" role="presentation"></ol>
        </div>
      </div>
    </div>
  </div>
</div>
    
    
      <div class="md-header__source">
        <a href="https://git.opsx.vip/docs/wuyou.run.git" title="前往仓库" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
  </div>
  <div class="md-source__repository">
    wuyou.run
  </div>
</a>
      </div>
    
  </nav>
  
</header>
    
    <div class="md-container" data-md-component="container">
      
      
        
          
        
      
      <main class="md-main" data-md-component="main">
        <div class="md-main__inner md-grid">
          
            
              
              <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    



<nav class="md-nav md-nav--primary" aria-label="导航栏" data-md-level="0">
  <label class="md-nav__title" for="__drawer">
    <a href="../.." title="运维无忧文档" class="md-nav__button md-logo" aria-label="运维无忧文档" data-md-component="logo">
      
  <img src="../../image/logo.png" alt="logo">

    </a>
    运维无忧文档
  </label>
  
    <div class="md-nav__source">
      <a href="https://git.opsx.vip/docs/wuyou.run.git" title="前往仓库" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
  </div>
  <div class="md-source__repository">
    wuyou.run
  </div>
</a>
    </div>
  
  <ul class="md-nav__list" data-md-scrollfix>
    
      
      
  
  
  
  
    <li class="md-nav__item">
      <a href="../.." class="md-nav__link">
        
  
  <span class="md-ellipsis">
    首页
  </span>
  

      </a>
    </li>
  

    
      
      
  
  
    
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" checked>
        
          
          <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Linux基础设施
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
          <label class="md-nav__title" for="__nav_2">
            <span class="md-nav__icon md-icon"></span>
            Linux基础设施
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1" >
        
          
          <label class="md-nav__link" for="__nav_2_1" id="__nav_2_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    基础环境配置
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_1">
            <span class="md-nav__icon md-icon"></span>
            基础环境配置
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../system_init/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    系统初始化
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../dev_env/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    开发环境搭建
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
    
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2" checked>
        
          
          <label class="md-nav__link" for="__nav_2_2" id="__nav_2_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    常用服务部署
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_2_label" aria-expanded="true">
          <label class="md-nav__title" for="__nav_2_2">
            <span class="md-nav__icon md-icon"></span>
            常用服务部署
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2_1" >
        
          
          <label class="md-nav__link" for="__nav_2_2_1" id="__nav_2_2_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Web服务与代理
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_2_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_2_1">
            <span class="md-nav__icon md-icon"></span>
            Web服务与代理
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../web_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Web服务
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../proxy_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    代理服务
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../services-loadbalancing/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    负载均衡服务
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../cache_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    缓存加速服务
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2_2" >
        
          
          <label class="md-nav__link" for="__nav_2_2_2" id="__nav_2_2_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    数据存储
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_2_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_2_2">
            <span class="md-nav__icon md-icon"></span>
            数据存储
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../database_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    数据库服务
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../storage_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    文件存储服务
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
    
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2_3" checked>
        
          
          <label class="md-nav__link" for="__nav_2_2_3" id="__nav_2_2_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    监控与日志
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_2_3_label" aria-expanded="true">
          <label class="md-nav__title" for="__nav_2_2_3">
            <span class="md-nav__icon md-icon"></span>
            监控与日志
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
    
  
  
  
    <li class="md-nav__item md-nav__item--active">
      
      <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
      
      
        
      
      
        <label class="md-nav__link md-nav__link--active" for="__toc">
          
  
  <span class="md-ellipsis">
    监控系统
  </span>
  

          <span class="md-nav__icon md-icon"></span>
        </label>
      
      <a href="./" class="md-nav__link md-nav__link--active">
        
  
  <span class="md-ellipsis">
    监控系统
  </span>
  

      </a>
      
        

<nav class="md-nav md-nav--secondary" aria-label="目录">
  
  
  
    
  
  
    <label class="md-nav__title" for="__toc">
      <span class="md-nav__icon md-icon"></span>
      目录
    </label>
    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#prometheus-grafana" class="md-nav__link">
    <span class="md-ellipsis">
      Prometheus + Grafana 监控系统
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Prometheus + Grafana 监控系统">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheus" class="md-nav__link">
    <span class="md-ellipsis">
      Prometheus部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Prometheus部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheus_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Prometheus
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#prometheus_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Prometheus
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#prometheus_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Prometheus服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#node-exporter" class="md-nav__link">
    <span class="md-ellipsis">
      Node Exporter部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Node Exporter部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#node-exporter_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Node Exporter
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#node-exporter_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Node Exporter服务
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#node-exporter_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Node Exporter服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafana" class="md-nav__link">
    <span class="md-ellipsis">
      Grafana部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Grafana部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#grafana_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafana_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafana_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Grafana服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafanaprometheus" class="md-nav__link">
    <span class="md-ellipsis">
      Grafana配置Prometheus数据源
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#dashboard" class="md-nav__link">
    <span class="md-ellipsis">
      配置Dashboard
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_2" class="md-nav__link">
    <span class="md-ellipsis">
      添加报警规则
    </span>
  </a>
  
    <nav class="md-nav" aria-label="添加报警规则">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheus_4" class="md-nav__link">
    <span class="md-ellipsis">
      Prometheus报警规则
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#alertmanager" class="md-nav__link">
    <span class="md-ellipsis">
      Alertmanager部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Alertmanager部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#alertmanager_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Alertmanager
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#alertmanager_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Alertmanager
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#alertmanager_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Alertmanager服务
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#prometheus_5" class="md-nav__link">
    <span class="md-ellipsis">
      更新Prometheus配置
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#zabbix" class="md-nav__link">
    <span class="md-ellipsis">
      Zabbix 企业级监控系统
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Zabbix 企业级监控系统">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_3" class="md-nav__link">
    <span class="md-ellipsis">
      服务端部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="服务端部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_4" class="md-nav__link">
    <span class="md-ellipsis">
      安装依赖
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Zabbix
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_5" class="md-nav__link">
    <span class="md-ellipsis">
      配置数据库
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-server" class="md-nav__link">
    <span class="md-ellipsis">
      配置Zabbix Server
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#php" class="md-nav__link">
    <span class="md-ellipsis">
      配置PHP
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix_2" class="md-nav__link">
    <span class="md-ellipsis">
      启动Zabbix服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#web" class="md-nav__link">
    <span class="md-ellipsis">
      Web界面设置
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-agent" class="md-nav__link">
    <span class="md-ellipsis">
      配置Zabbix Agent
    </span>
  </a>
  
    <nav class="md-nav" aria-label="配置Zabbix Agent">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_6" class="md-nav__link">
    <span class="md-ellipsis">
      在被监控主机上安装
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-agent_1" class="md-nav__link">
    <span class="md-ellipsis">
      配置Zabbix Agent
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-agent_2" class="md-nav__link">
    <span class="md-ellipsis">
      启动Zabbix Agent
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_7" class="md-nav__link">
    <span class="md-ellipsis">
      添加主机到监控
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_8" class="md-nav__link">
    <span class="md-ellipsis">
      配置报警
    </span>
  </a>
  
    <nav class="md-nav" aria-label="配置报警">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_9" class="md-nav__link">
    <span class="md-ellipsis">
      设置媒介类型
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_10" class="md-nav__link">
    <span class="md-ellipsis">
      创建操作
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_11" class="md-nav__link">
    <span class="md-ellipsis">
      配置用户警报媒介
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#_12" class="md-nav__link">
    <span class="md-ellipsis">
      监控系统集成
    </span>
  </a>
  
    <nav class="md-nav" aria-label="监控系统集成">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheusgrafana" class="md-nav__link">
    <span class="md-ellipsis">
      将Prometheus数据送入Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#nagiosgrafana" class="md-nav__link">
    <span class="md-ellipsis">
      将Nagios数据送入Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbixgrafana" class="md-nav__link">
    <span class="md-ellipsis">
      将Zabbix数据送入Grafana
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
    </ul>
  
</nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../logging_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    日志管理
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../message_queue_services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    消息队列
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_3" >
        
          
          <label class="md-nav__link" for="__nav_2_3" id="__nav_2_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    系统运维
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_3">
            <span class="md-nav__icon md-icon"></span>
            系统运维
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../storage/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    存储与备份
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../lvm/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    LVM存储管理
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../network/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    网络服务配置
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../monitor/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    监控与日志
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
        
          
          <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    容器与编排
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_3">
            <span class="md-nav__icon md-icon"></span>
            容器与编排
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_1" >
        
          
          <label class="md-nav__link" for="__nav_3_1" id="__nav_3_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Docker
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_3_1">
            <span class="md-nav__icon md-icon"></span>
            Docker
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../docker/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    基础安装
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../docker/build/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    镜像构建
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../docker/services/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    常用服务部署
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../docker/network-storage/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    网络与存储
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../docker-compose/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Docker Compose
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_3" >
        
          
          <label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Kubernetes
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_3_3">
            <span class="md-nav__icon md-icon"></span>
            Kubernetes
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../kubernetes/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    集群部署
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../kubernetes/resources/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    资源管理
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../kubernetes/operations/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    运维操作
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../kubernetes/best-practices/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    最佳实践
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
        
          
          <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    DevOps工具链
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_4">
            <span class="md-nav__icon md-icon"></span>
            DevOps工具链
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../cicd/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    CI/CD流水线
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../devops/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    自动化运维
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
        
          
          <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Shell 快速入门
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_5">
            <span class="md-nav__icon md-icon"></span>
            Shell 快速入门
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/introduction/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Linux 基础命令
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/commands/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    常用命令集
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/variables_and_data_types/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    变量和数据类型
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/control_flow/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    控制流程 (if、else、for、while)
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/functions/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Shell函数
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/text_processing/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    文本处理三剑客
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="../../shell/scripts/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Shell脚本实战
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
  </ul>
</nav>
                  </div>
                </div>
              </div>
            
            
              
              <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    

<nav class="md-nav md-nav--secondary" aria-label="目录">
  
  
  
    
  
  
    <label class="md-nav__title" for="__toc">
      <span class="md-nav__icon md-icon"></span>
      目录
    </label>
    <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#prometheus-grafana" class="md-nav__link">
    <span class="md-ellipsis">
      Prometheus + Grafana 监控系统
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Prometheus + Grafana 监控系统">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheus" class="md-nav__link">
    <span class="md-ellipsis">
      Prometheus部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Prometheus部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheus_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Prometheus
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#prometheus_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Prometheus
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#prometheus_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Prometheus服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#node-exporter" class="md-nav__link">
    <span class="md-ellipsis">
      Node Exporter部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Node Exporter部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#node-exporter_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Node Exporter
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#node-exporter_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Node Exporter服务
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#node-exporter_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Node Exporter服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafana" class="md-nav__link">
    <span class="md-ellipsis">
      Grafana部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Grafana部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#grafana_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafana_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafana_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Grafana服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#grafanaprometheus" class="md-nav__link">
    <span class="md-ellipsis">
      Grafana配置Prometheus数据源
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#dashboard" class="md-nav__link">
    <span class="md-ellipsis">
      配置Dashboard
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_2" class="md-nav__link">
    <span class="md-ellipsis">
      添加报警规则
    </span>
  </a>
  
    <nav class="md-nav" aria-label="添加报警规则">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheus_4" class="md-nav__link">
    <span class="md-ellipsis">
      Prometheus报警规则
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#alertmanager" class="md-nav__link">
    <span class="md-ellipsis">
      Alertmanager部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Alertmanager部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#alertmanager_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Alertmanager
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#alertmanager_2" class="md-nav__link">
    <span class="md-ellipsis">
      配置Alertmanager
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#alertmanager_3" class="md-nav__link">
    <span class="md-ellipsis">
      启动Alertmanager服务
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#prometheus_5" class="md-nav__link">
    <span class="md-ellipsis">
      更新Prometheus配置
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#zabbix" class="md-nav__link">
    <span class="md-ellipsis">
      Zabbix 企业级监控系统
    </span>
  </a>
  
    <nav class="md-nav" aria-label="Zabbix 企业级监控系统">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_3" class="md-nav__link">
    <span class="md-ellipsis">
      服务端部署
    </span>
  </a>
  
    <nav class="md-nav" aria-label="服务端部署">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_4" class="md-nav__link">
    <span class="md-ellipsis">
      安装依赖
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix_1" class="md-nav__link">
    <span class="md-ellipsis">
      安装Zabbix
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_5" class="md-nav__link">
    <span class="md-ellipsis">
      配置数据库
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-server" class="md-nav__link">
    <span class="md-ellipsis">
      配置Zabbix Server
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#php" class="md-nav__link">
    <span class="md-ellipsis">
      配置PHP
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix_2" class="md-nav__link">
    <span class="md-ellipsis">
      启动Zabbix服务
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#web" class="md-nav__link">
    <span class="md-ellipsis">
      Web界面设置
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-agent" class="md-nav__link">
    <span class="md-ellipsis">
      配置Zabbix Agent
    </span>
  </a>
  
    <nav class="md-nav" aria-label="配置Zabbix Agent">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_6" class="md-nav__link">
    <span class="md-ellipsis">
      在被监控主机上安装
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-agent_1" class="md-nav__link">
    <span class="md-ellipsis">
      配置Zabbix Agent
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbix-agent_2" class="md-nav__link">
    <span class="md-ellipsis">
      启动Zabbix Agent
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_7" class="md-nav__link">
    <span class="md-ellipsis">
      添加主机到监控
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_8" class="md-nav__link">
    <span class="md-ellipsis">
      配置报警
    </span>
  </a>
  
    <nav class="md-nav" aria-label="配置报警">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#_9" class="md-nav__link">
    <span class="md-ellipsis">
      设置媒介类型
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_10" class="md-nav__link">
    <span class="md-ellipsis">
      创建操作
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#_11" class="md-nav__link">
    <span class="md-ellipsis">
      配置用户警报媒介
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
        <li class="md-nav__item">
  <a href="#_12" class="md-nav__link">
    <span class="md-ellipsis">
      监控系统集成
    </span>
  </a>
  
    <nav class="md-nav" aria-label="监控系统集成">
      <ul class="md-nav__list">
        
          <li class="md-nav__item">
  <a href="#prometheusgrafana" class="md-nav__link">
    <span class="md-ellipsis">
      将Prometheus数据送入Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#nagiosgrafana" class="md-nav__link">
    <span class="md-ellipsis">
      将Nagios数据送入Grafana
    </span>
  </a>
  
</li>
        
          <li class="md-nav__item">
  <a href="#zabbixgrafana" class="md-nav__link">
    <span class="md-ellipsis">
      将Zabbix数据送入Grafana
    </span>
  </a>
  
</li>
        
      </ul>
    </nav>
  
</li>
      
    </ul>
  
</nav>
                  </div>
                </div>
              </div>
            
          
          
            <div class="md-content" data-md-component="content">
              <article class="md-content__inner md-typeset">
                
                  

  
  


<h1 id="_1">监控系统部署指南</h1>
<h2 id="prometheus-grafana">Prometheus + Grafana 监控系统</h2>
<h3 id="prometheus">Prometheus部署</h3>
<h4 id="prometheus_1">安装Prometheus</h4>
<pre><code class="language-bash"># 创建Prometheus用户
useradd --no-create-home --shell /bin/false prometheus

# 创建必要的目录
mkdir -p /etc/prometheus
mkdir -p /var/lib/prometheus

# 下载Prometheus
PROMETHEUS_VERSION=&quot;2.37.0&quot;
wget https://github.com/prometheus/prometheus/releases/download/v${PROMETHEUS_VERSION}/prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz

# 解压文件
tar -xvf prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz
cd prometheus-${PROMETHEUS_VERSION}.linux-amd64

# 复制二进制文件
cp prometheus promtool /usr/local/bin/

# 复制配置文件
cp -r consoles/ console_libraries/ /etc/prometheus/
cp prometheus.yml /etc/prometheus/

# 设置权限
chown -R prometheus:prometheus /etc/prometheus
chown -R prometheus:prometheus /var/lib/prometheus
chown prometheus:prometheus /usr/local/bin/prometheus
chown prometheus:prometheus /usr/local/bin/promtool

# 清理下载的文件
cd ..
rm -rf prometheus-${PROMETHEUS_VERSION}.linux-amd64
rm prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz
</code></pre>
<h4 id="prometheus_2">配置Prometheus</h4>
<p>编辑配置文件 <code>/etc/prometheus/prometheus.yml</code>:</p>
<pre><code class="language-yaml">global:
  scrape_interval: 15s
  evaluation_interval: 15s
  scrape_timeout: 10s

# 报警管理器配置
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

# 报警规则文件
rule_files:
  # - &quot;rules/alert.rules&quot;

# 抓取配置
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']

  - job_name: 'node_exporter'
    static_configs:
      - targets: ['localhost:9100']

  # 可添加更多监控目标
</code></pre>
<p>创建systemd服务 <code>/etc/systemd/system/prometheus.service</code>:</p>
<pre><code class="language-ini">[Unit]
Description=Prometheus Time Series Collection and Processing Server
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
    --config.file=/etc/prometheus/prometheus.yml \
    --storage.tsdb.path=/var/lib/prometheus/ \
    --web.console.templates=/etc/prometheus/consoles \
    --web.console.libraries=/etc/prometheus/console_libraries \
    --web.listen-address=0.0.0.0:9090 \
    --web.enable-lifecycle \
    --storage.tsdb.retention.time=15d

Restart=always

[Install]
WantedBy=multi-user.target
</code></pre>
<h4 id="prometheus_3">启动Prometheus服务</h4>
<pre><code class="language-bash"># 重新加载systemd
systemctl daemon-reload

# 启动Prometheus
systemctl start prometheus
systemctl enable prometheus
systemctl status prometheus

# 检查日志
journalctl -u prometheus -f
</code></pre>
<h3 id="node-exporter">Node Exporter部署</h3>
<h4 id="node-exporter_1">安装Node Exporter</h4>
<pre><code class="language-bash"># 创建用户
useradd --no-create-home --shell /bin/false node_exporter

# 下载Node Exporter
NODE_EXPORTER_VERSION=&quot;1.3.1&quot;
wget https://github.com/prometheus/node_exporter/releases/download/v${NODE_EXPORTER_VERSION}/node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64.tar.gz

# 解压文件
tar -xvf node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64.tar.gz
cd node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64

# 复制二进制文件
cp node_exporter /usr/local/bin/
chown node_exporter:node_exporter /usr/local/bin/node_exporter

# 清理下载的文件
cd ..
rm -rf node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64
rm node_exporter-${NODE_EXPORTER_VERSION}.linux-amd64.tar.gz
</code></pre>
<h4 id="node-exporter_2">配置Node Exporter服务</h4>
<p>创建systemd服务 <code>/etc/systemd/system/node_exporter.service</code>:</p>
<pre><code class="language-ini">[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter \
    --collector.filesystem.ignored-mount-points=&quot;^/(sys|proc|dev|run)($|/)&quot; \
    --collector.systemd \
    --collector.processes

Restart=always

[Install]
WantedBy=multi-user.target
</code></pre>
<h4 id="node-exporter_3">启动Node Exporter服务</h4>
<pre><code class="language-bash"># 重新加载systemd
systemctl daemon-reload

# 启动Node Exporter
systemctl start node_exporter
systemctl enable node_exporter
systemctl status node_exporter
</code></pre>
<h3 id="grafana">Grafana部署</h3>
<h4 id="grafana_1">安装Grafana</h4>
<pre><code class="language-bash"># CentOS/RHEL系统
cat &gt; /etc/yum.repos.d/grafana.repo &lt;&lt; EOF
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
EOF

yum install -y grafana

# Debian/Ubuntu系统
apt-get install -y apt-transport-https software-properties-common
wget -q -O - https://packages.grafana.com/gpg.key | apt-key add -
echo &quot;deb https://packages.grafana.com/oss/deb stable main&quot; | tee -a /etc/apt/sources.list.d/grafana.list
apt-get update
apt-get install -y grafana
</code></pre>
<h4 id="grafana_2">配置Grafana</h4>
<p>修改Grafana配置文件 <code>/etc/grafana/grafana.ini</code>:</p>
<pre><code class="language-ini">[server]
# 服务器监听地址
http_addr = 0.0.0.0
http_port = 3000
domain = localhost

[security]
# 管理员账号
admin_user = admin
# 禁用初始密码设置(首次登录时会要求修改密码)
;admin_password = admin

[users]
# 是否允许注册
allow_sign_up = false
# 是否允许非管理员创建组织
allow_org_create = false

[auth.anonymous]
# 是否启用匿名访问
enabled = false
</code></pre>
<h4 id="grafana_3">启动Grafana服务</h4>
<pre><code class="language-bash"># 启动Grafana
systemctl start grafana-server
systemctl enable grafana-server
systemctl status grafana-server
</code></pre>
<h3 id="grafanaprometheus">Grafana配置Prometheus数据源</h3>
<p>通过浏览器访问Grafana (http://server_ip:3000) 并按照以下步骤配置:</p>
<ol>
<li>使用默认凭据登录 (admin/admin)</li>
<li>点击 "Configuration" (⚙️ 图标) &gt; "Data Sources"</li>
<li>点击 "Add data source"</li>
<li>选择 "Prometheus"</li>
<li>配置以下内容:</li>
<li>Name: Prometheus</li>
<li>URL: http://localhost:9090</li>
<li>Access: Server (default)</li>
<li>点击 "Save &amp; Test"</li>
</ol>
<h3 id="dashboard">配置Dashboard</h3>
<p>Grafana提供了丰富的预制Dashboard，可以导入使用:</p>
<ol>
<li>点击左侧加号图标 &gt; "Import"</li>
<li>输入Dashboard ID (例如Node Exporter dashboard: 1860)</li>
<li>点击 "Load"</li>
<li>选择Prometheus数据源</li>
<li>点击 "Import"</li>
</ol>
<h3 id="_2">添加报警规则</h3>
<h4 id="prometheus_4">Prometheus报警规则</h4>
<p>创建报警规则文件 <code>/etc/prometheus/rules/alert.rules</code>:</p>
<pre><code class="language-yaml">groups:
- name: example
  rules:
  # 实例停机报警
  - alert: InstanceDown
    expr: up == 0
    for: 5m
    labels:
      severity: critical
    annotations:
      summary: &quot;Instance {{ $labels.instance }} down&quot;
      description: &quot;{{ $labels.instance }} of job {{ $labels.job }} has been down for more than 5 minutes.&quot;

  # 高CPU使用率报警
  - alert: HighCPULoad
    expr: 100 - (avg by(instance) (irate(node_cpu_seconds_total{mode=&quot;idle&quot;}[5m])) * 100) &gt; 80
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: &quot;High CPU load (instance {{ $labels.instance }})&quot;
      description: &quot;CPU load is &gt; 80%\n  VALUE = {{ $value }}\n  LABELS: {{ $labels }}&quot;

  # 高内存使用率报警
  - alert: HighMemoryLoad
    expr: (node_memory_MemTotal_bytes - (node_memory_MemFree_bytes + node_memory_Buffers_bytes + node_memory_Cached_bytes)) / node_memory_MemTotal_bytes * 100 &gt; 80
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: &quot;High memory load (instance {{ $labels.instance }})&quot;
      description: &quot;Memory load is &gt; 80%\n  VALUE = {{ $value }}\n  LABELS: {{ $labels }}&quot;
</code></pre>
<p>更新Prometheus配置文件 <code>/etc/prometheus/prometheus.yml</code> 以包含规则文件:</p>
<pre><code class="language-yaml"># 报警规则文件
rule_files:
  - &quot;rules/alert.rules&quot;
</code></pre>
<p>重启Prometheus:</p>
<pre><code class="language-bash">systemctl restart prometheus
</code></pre>
<h3 id="alertmanager">Alertmanager部署</h3>
<h4 id="alertmanager_1">安装Alertmanager</h4>
<pre><code class="language-bash"># 创建Alertmanager用户
useradd --no-create-home --shell /bin/false alertmanager

# 创建必要的目录
mkdir -p /etc/alertmanager
mkdir -p /var/lib/alertmanager

# 下载Alertmanager
ALERTMANAGER_VERSION=&quot;0.24.0&quot;
wget https://github.com/prometheus/alertmanager/releases/download/v${ALERTMANAGER_VERSION}/alertmanager-${ALERTMANAGER_VERSION}.linux-amd64.tar.gz

# 解压文件
tar -xvf alertmanager-${ALERTMANAGER_VERSION}.linux-amd64.tar.gz
cd alertmanager-${ALERTMANAGER_VERSION}.linux-amd64

# 复制二进制文件
cp alertmanager amtool /usr/local/bin/

# 复制配置文件
cp alertmanager.yml /etc/alertmanager/

# 设置权限
chown -R alertmanager:alertmanager /etc/alertmanager
chown -R alertmanager:alertmanager /var/lib/alertmanager
chown alertmanager:alertmanager /usr/local/bin/alertmanager
chown alertmanager:alertmanager /usr/local/bin/amtool

# 清理下载的文件
cd ..
rm -rf alertmanager-${ALERTMANAGER_VERSION}.linux-amd64
rm alertmanager-${ALERTMANAGER_VERSION}.linux-amd64.tar.gz
</code></pre>
<h4 id="alertmanager_2">配置Alertmanager</h4>
<p>编辑配置文件 <code>/etc/alertmanager/alertmanager.yml</code>:</p>
<pre><code class="language-yaml">global:
  resolve_timeout: 5m
  # SMTP配置 (邮件通知)
  smtp_smarthost: 'smtp.example.com:587'
  smtp_from: 'alertmanager@example.com'
  smtp_auth_username: 'alertmanager'
  smtp_auth_password: 'password'
  # Slack配置
  slack_api_url: 'https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX'

# 模板文件
templates:
  - '/etc/alertmanager/templates/*.tmpl'

# 路由
route:
  group_by: ['alertname', 'job', 'severity']
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 4h
  receiver: 'email-notifications'
  routes:
  - match:
      severity: critical
    receiver: 'pager-notifications'
    continue: true

# 接收器
receivers:
- name: 'email-notifications'
  email_configs:
  - to: 'admin@example.com'
    send_resolved: true

- name: 'pager-notifications'
  slack_configs:
  - channel: '#alerts'
    send_resolved: true

# 抑制规则
inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    equal: ['alertname', 'dev', 'instance']
</code></pre>
<p>创建systemd服务 <code>/etc/systemd/system/alertmanager.service</code>:</p>
<pre><code class="language-ini">[Unit]
Description=Alertmanager for Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=alertmanager
Group=alertmanager
Type=simple
ExecStart=/usr/local/bin/alertmanager \
    --config.file=/etc/alertmanager/alertmanager.yml \
    --storage.path=/var/lib/alertmanager \
    --web.listen-address=0.0.0.0:9093

Restart=always

[Install]
WantedBy=multi-user.target
</code></pre>
<h4 id="alertmanager_3">启动Alertmanager服务</h4>
<pre><code class="language-bash"># 重新加载systemd
systemctl daemon-reload

# 启动Alertmanager
systemctl start alertmanager
systemctl enable alertmanager
systemctl status alertmanager
</code></pre>
<h4 id="prometheus_5">更新Prometheus配置</h4>
<p>更新Prometheus配置文件 <code>/etc/prometheus/prometheus.yml</code> 以使用Alertmanager:</p>
<pre><code class="language-yaml">alerting:
  alertmanagers:
  - static_configs:
    - targets:
      - localhost:9093
</code></pre>
<p>重启Prometheus:</p>
<pre><code class="language-bash">systemctl restart prometheus
</code></pre>
<h2 id="zabbix">Zabbix 企业级监控系统</h2>
<h3 id="_3">服务端部署</h3>
<h4 id="_4">安装依赖</h4>
<pre><code class="language-bash"># CentOS/RHEL系统
yum install -y httpd php php-mysql php-gd php-xml php-mbstring php-bcmath php-ldap mariadb-server mariadb

# 启动Apache和MariaDB
systemctl start httpd
systemctl enable httpd
systemctl start mariadb
systemctl enable mariadb

# 运行MariaDB安全配置
mysql_secure_installation
</code></pre>
<h4 id="zabbix_1">安装Zabbix</h4>
<pre><code class="language-bash"># 添加Zabbix源
rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/7/x86_64/zabbix-release-5.4-1.el7.noarch.rpm

# 安装Zabbix组件
yum clean all
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent
</code></pre>
<h4 id="_5">配置数据库</h4>
<pre><code class="language-bash"># 创建Zabbix数据库和用户
mysql -u root -p
</code></pre>
<p>在MySQL提示符下执行:</p>
<pre><code class="language-sql">create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
flush privileges;
</code></pre>
<p>导入初始架构和数据:</p>
<pre><code class="language-bash">zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
</code></pre>
<h4 id="zabbix-server">配置Zabbix Server</h4>
<p>编辑 <code>/etc/zabbix/zabbix_server.conf</code>:</p>
<pre><code class="language-ini">DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password
</code></pre>
<h4 id="php">配置PHP</h4>
<p>编辑 <code>/etc/php-fpm.d/zabbix.conf</code>:</p>
<pre><code class="language-ini">php_value[date.timezone] = Asia/Shanghai
</code></pre>
<h4 id="zabbix_2">启动Zabbix服务</h4>
<pre><code class="language-bash"># 启动Zabbix服务
systemctl restart zabbix-server zabbix-agent httpd php-fpm
systemctl enable zabbix-server zabbix-agent httpd php-fpm
</code></pre>
<h3 id="web">Web界面设置</h3>
<p>通过浏览器访问 http://server_ip/zabbix 并按照向导完成配置:</p>
<ol>
<li>检查前置条件 (确保所有要求都为"OK")</li>
<li>配置数据库连接</li>
<li>数据库类型: MySQL</li>
<li>数据库服务器: localhost</li>
<li>数据库端口: 3306 (默认)</li>
<li>数据库名称: zabbix</li>
<li>用户: zabbix</li>
<li>密码: 你设置的密码</li>
<li>Zabbix服务器详细信息</li>
<li>主机: localhost</li>
<li>端口: 10051</li>
<li>名称: 可选</li>
<li>安装前摘要 (检查所有设置)</li>
<li>完成安装</li>
</ol>
<h3 id="zabbix-agent">配置Zabbix Agent</h3>
<h4 id="_6">在被监控主机上安装</h4>
<pre><code class="language-bash"># CentOS/RHEL系统
rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/7/x86_64/zabbix-release-5.4-1.el7.noarch.rpm
yum install -y zabbix-agent
</code></pre>
<h4 id="zabbix-agent_1">配置Zabbix Agent</h4>
<p>编辑 <code>/etc/zabbix/zabbix_agentd.conf</code>:</p>
<pre><code class="language-ini">Server=zabbix_server_ip
ServerActive=zabbix_server_ip
Hostname=本机主机名  # 必须与Zabbix Web界面添加的主机名匹配
</code></pre>
<h4 id="zabbix-agent_2">启动Zabbix Agent</h4>
<pre><code class="language-bash">systemctl restart zabbix-agent
systemctl enable zabbix-agent
</code></pre>
<h3 id="_7">添加主机到监控</h3>
<ol>
<li>登录Zabbix Web界面 (默认凭据: Admin/zabbix)</li>
<li>导航到: Configuration &gt; Hosts &gt; Create host</li>
<li>填写以下信息:</li>
<li>Host name: 与agent配置中的Hostname相同</li>
<li>Groups: 选择或创建主机组</li>
<li>Agent interfaces: 添加IP地址和端口(默认10050)</li>
<li>选择Templates选项卡，搜索并添加适当的模板 (如"Template OS Linux by Zabbix agent")</li>
<li>点击"Add"按钮保存主机</li>
</ol>
<h3 id="_8">配置报警</h3>
<h4 id="_9">设置媒介类型</h4>
<ol>
<li>导航到: Administration &gt; Media types</li>
<li>配置Email, SMS, Slack等媒介</li>
</ol>
<h4 id="_10">创建操作</h4>
<ol>
<li>导航到: Configuration &gt; Actions</li>
<li>创建新触发动作</li>
<li>配置条件和操作</li>
</ol>
<h4 id="_11">配置用户警报媒介</h4>
<ol>
<li>导航到: Administration &gt; Users</li>
<li>选择用户并配置Media选项卡</li>
</ol>
<h2 id="_12">监控系统集成</h2>
<h3 id="prometheusgrafana">将Prometheus数据送入Grafana</h3>
<ol>
<li>在Grafana中添加Prometheus数据源</li>
<li>创建Dashboard显示Prometheus监控数据</li>
</ol>
<h3 id="nagiosgrafana">将Nagios数据送入Grafana</h3>
<ol>
<li>在Nagios主机上安装Graphios</li>
<li>配置Graphios将性能数据发送到Graphite/InfluxDB</li>
<li>在Grafana中添加Graphite/InfluxDB数据源</li>
<li>创建Dashboard显示Nagios监控数据</li>
</ol>
<h3 id="zabbixgrafana">将Zabbix数据送入Grafana</h3>
<ol>
<li>在Grafana中安装Zabbix数据源插件</li>
<li>添加Zabbix数据源</li>
<li>创建Dashboard显示Zabbix监控数据</li>
</ol>












                
              </article>
            </div>
          
          
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
        </div>
        
      </main>
      
        <footer class="md-footer">
  
  <div class="md-footer-meta md-typeset">
    <div class="md-footer-meta__inner md-grid">
      <div class="md-copyright">
  
  
    Made with
    <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
      Material for MkDocs
    </a>
  
</div>
      
        <div class="md-social">
  
    
    
    
    
      
      
    
    <a href="https://git.opsx.vip/docs/PythonFullStackGuide.git" target="_blank" rel="noopener" title="git.opsx.vip" class="md-social__link">
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
    </a>
  
    
    
    
    
    <a href="mailto:admin@attacker.club" target="_blank" rel="noopener" title="" class="md-social__link">
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4l217.6 163.2c11.4 8.5 27 8.5 38.4 0l217.6-163.2c12.1-9.1 19.2-23.3 19.2-38.4 0-26.5-21.5-48-48-48zM0 176v208c0 35.3 28.7 64 64 64h384c35.3 0 64-28.7 64-64V176L294.4 339.2a63.9 63.9 0 0 1-76.8 0z"/></svg>
    </a>
  
</div>
      
    </div>
  </div>
</footer>
      
    </div>
    <div class="md-dialog" data-md-component="dialog">
      <div class="md-dialog__inner md-typeset"></div>
    </div>
    
    
    <script id="__config" type="application/json">{"base": "../..", "features": [], "search": "../../assets/javascripts/workers/search.f8cc74c7.min.js", "translations": {"clipboard.copied": "\u5df2\u590d\u5236", "clipboard.copy": "\u590d\u5236", "search.result.more.one": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.more.other": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 # \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.none": "\u6ca1\u6709\u627e\u5230\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.one": "\u627e\u5230 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.other": "# \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.placeholder": "\u952e\u5165\u4ee5\u5f00\u59cb\u641c\u7d22", "search.result.term.missing": "\u7f3a\u5c11", "select.version": "\u9009\u62e9\u5f53\u524d\u7248\u672c"}}</script>
    
    
      <script src="../../assets/javascripts/bundle.60a45f97.min.js"></script>
      
        <script src="../../js/prism.js"></script>
      
    
  </body>
</html>